// 入口函数
$(function () {
  if (!localStorage.getItem("token")) {
    layui.layer.msg("登录失败，token缺失", { icon: 5 }, function () {
      localStorage.removeItem("token");
      // 2. 强制跳转到登录页面
      window.parent.location.href = "/bigevent-end/login.html";
    });
  }
  // alert('ok')
  /**** 1-自定义校验规则 ****/

  $("tbody").on("click", ".btn-edit", function () {
    // console.log('kk')

    indexEdit = layui.layer.open({
      type: 1,
      title: "重置密码",
      area: ["500px", "300px"],
      content: $("#repwd-form-tpl").html(),
    });
    var id = $(this).attr("data-id");
    $("#repwd-form").attr("data-id", id);

    // 3.2 把分类信息渲染到表单中
    // 获取被编辑分类的id
    // console.log(id)
    // var password=$('#repwd-form').serialize();
    // // 根据id获取被编辑分类的信息
    $("#repwd-form").on("submit", function (e) {
      e.preventDefault();
      var id = $(this).attr("data-id");
      var password = $("#repwd-form").serialize();
      $.ajax({
        url: "/admin/users/" + id,
        method: "put",
        data: {
          password,
        },
        success: function (res) {
          // 给表单赋值
          layui.form.val("form-edit", res.data);
          layui.layer.close(indexEdit);
        },
      });
    });
  });

  layui.form.verify({
    pwd: [/^[\S]{6,12}$/, "密码必须是6-12位的非空字符"],
    // 新密码不能和旧密码一致
    samePwd: function (value) {
      // value 使用此规则的表单项的值（新密码的值）
      // if(value === 旧密码的值){
      if (value === $("[name=oldPwd]").val()) {
        return "新旧密码不能一致";
      }
    },
    // 新密码和确认新密码必须一致
    rePwd: function (value) {
      // value 使用此规则的表单项的值（确认新密码的值）
      // if(value !== 新密码){}
      if (value !== $("[name=password]").val()) {
        return "两次密码不一致";
      }
    },
  });

  /**** 2-完成修改密码 ****/
  $(".layui-form").on("submit", function (e) {
    e.preventDefault();
    var data = $(this).serialize();
    return console.log(data);
  });
  var q = {
    pagenum: 1,
    pagesize: 2,
    cate_id: "",
    state: "",
  };

  /**** 1-渲染文章数据 ****/
  initArtList();

  function initArtList() {
    // 获取文章数据
    $.ajax({
      url: "/admin/users",
      method: "get",
      data: q,
      success: function (res) {
        console.log(res);
        // 判断
        if (res.status !== 0) {
          return layui.layer.msg(res.message, { icon: 5 });
        }
        // 渲染文章数据
        var htmlStr = template("tpl-list", res);
        // console.log(htmlStr)
        $("tbody").html(htmlStr);
        // 渲染分页按钮
        renderPage(res.total);
      },
    });
  }

  function renderPage(total) {
    layui.laypage.render({
      elem: "articlePage", // 分页按钮渲染到的容器（不要加#)
      count: total, // 数据总数
      limit: q.pagesize, // 每页显示的条数
      curr: q.pagenum, // 当前页码（高亮）
      limits: [2, 4, 6, 8, 10], // 每页显示多少条的选项
      layout: ["limit", "page", "prev", "next", "count", "skip"], // 页码按钮的排版
      jump: function (obj, first) {
        // 1-切换页码时就调用此函数。 first的值是undefined
        // 2-渲染分页按钮时，也会调用此函数。 first的值是true
        // console.log('ok')
        // console.log(first)
        if (!first) {
          console.log(obj);
          // 3-obj 参数，分页参数对象。（obj.limit，obj.curr，obj.count）
          // 获取最新页码值，修改参数对象q
          q.pagenum = obj.curr;
          // 获取最新每页显示的条数，修改参数对象q
          q.pagesize = obj.limit;
          // 重新获取数据
          initArtList();
        }
      },
    });
  }

  /**** 4-删除分类 ****/
  $("tbody").on("click", ".btn-delete", function () {
    // 获取被删除分类的id
    var len = $(".btn-delete").length;
    var id = $(this).attr("data-id");
    // console.log(id)
    // 询问
    layui.layer.confirm("您确定要删除此分类吗?", { icon: 3, title: "提示" }, function (index) {
      //do something
      // 调接口，删除分类
      $.ajax({
        url: "/admin/users/" + id,
        method: "DELETE",
        success: function (res) {
          // console.log(res)
          // 判断
          if (res.status !== 0) {
            return layui.layer.msg(res.message, { icon: 5 });
          }
          layui.layer.msg("删除分类成功", { icon: 6 });

          if (len == 1) {
            //如果当前已经是第一页，不用减1
            q.pagenum = q.pagenum === 1 ? 1 : q.pagenum - 1;
          }
          initArtList();
        },
      });

      layer.close(index);
    });
  });
});
